package com.ruoyi.repair.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 维修管理（其实用不到）对象 che_maintain
 * 
 * @author 侯稼骏
 * @date 2024-12-31
 */
public class CheMaintain extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    private List<CheMaintainImage> cheMaintainImages;

    public List<CheMaintainImage> getCheMaintainImages()
    {
        return cheMaintainImages;
    }

    public CheMaintain(List<CheMaintainImage> cheMaintainImages, Long id, String number, Long userId, Long carId, String phone, Long type, String address, Date subscribeTime, Date submitTime, Date presentTime, String verificationCode, String photo, Long maintainState, Long state)
    {
        this.cheMaintainImages = cheMaintainImages;
        this.id = id;
        this.number = number;
        this.userId = userId;
        this.carId = carId;
        this.phone = phone;
        this.type = type;
        this.address = address;
        this.subscribeTime = subscribeTime;
        this.submitTime = submitTime;
        this.presentTime = presentTime;
        this.verificationCode = verificationCode;
        this.photo = photo;
        this.maintainState = maintainState;
        this.state = state;
    }

    public CheMaintain()
    {
    }

    public void setCheMaintainImages(List<CheMaintainImage> cheMaintainImages)
    {
        this.cheMaintainImages = cheMaintainImages;
    }

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long id;

    /** 维修单号 */
    @Excel(name = "维修单号")
    private String number;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 车辆id */
    @Excel(name = "车辆id")
    private Long carId;

    /** 联系方式 */
    @Excel(name = "联系方式")
    private String phone;

    /** 维修方式 */
    @Excel(name = "维修方式")
    private Long type;

    /** 维修地址 */
    @Excel(name = "维修地址")
    private String address;

    /** 预约日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预约日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date subscribeTime;

    /** 提交时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date submitTime;

    /** 到厂时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "到厂时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date presentTime;

    /** 核销码 */
    @Excel(name = "核销码")
    private String verificationCode;

    /** 整车照片 */
    @Excel(name = "整车照片")
    private String photo;

    private String[] photoList;

    /** 维修状态（已取消、进行中、已完成） */
    @Excel(name = "维修状态", readConverterExp = "已=取消、进行中、已完成")
    private Long maintainState;

    /** 状态（未到场、进行中、已到场、已完成） */
    @Excel(name = "状态", readConverterExp = "未=到场、进行中、已到场、已完成")
    private Long state;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setNumber(String number) 
    {
        this.number = number;
    }

    public String getNumber() 
    {
        return number;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setCarId(Long carId) 
    {
        this.carId = carId;
    }

    public Long getCarId() 
    {
        return carId;
    }
    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }
    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setSubscribeTime(Date subscribeTime) 
    {
        this.subscribeTime = subscribeTime;
    }

    public Date getSubscribeTime() 
    {
        return subscribeTime;
    }
    public void setSubmitTime(Date submitTime) 
    {
        this.submitTime = submitTime;
    }

    public Date getSubmitTime() 
    {
        return submitTime;
    }
    public void setPresentTime(Date presentTime) 
    {
        this.presentTime = presentTime;
    }

    public Date getPresentTime() 
    {
        return presentTime;
    }
    public void setVerificationCode(String verificationCode) 
    {
        this.verificationCode = verificationCode;
    }

    public String getVerificationCode() 
    {
        return verificationCode;
    }
    public void setPhoto(String photo) 
    {
        this.photo = photo;
    }

    public String getPhoto() 
    {
        return photo;
    }
    public void setMaintainState(Long maintainState) 
    {
        this.maintainState = maintainState;
    }

    public Long getMaintainState() 
    {
        return maintainState;
    }
    public void setState(Long state) 
    {
        this.state = state;
    }

    public Long getState() 
    {
        return state;
    }

    public String[] getPhotoList() {
        return photoList;
    }

    public void setPhotoList(String[] photoList) {
        this.photoList = photoList;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("number", getNumber())
            .append("userId", getUserId())
            .append("carId", getCarId())
            .append("phone", getPhone())
            .append("type", getType())
            .append("address", getAddress())
            .append("subscribeTime", getSubscribeTime())
            .append("submitTime", getSubmitTime())
            .append("presentTime", getPresentTime())
            .append("verificationCode", getVerificationCode())
            .append("photo", getPhoto())
            .append("maintainState", getMaintainState())
            .append("state", getState())
            .toString();
    }
}
